package com.so206.po;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

public class SystemSett implements Serializable {
    private Long id;

    /**
    * 结算id
    */
    private String sid;

    /**
    * 用户id
    */
    private Long uid;

    /**
    * 结算金额
    */
    private BigDecimal settPreMoney;

    /**
    * 扣除手续费
    */
    private BigDecimal settSubMoney;

    /**
    * 打款金额
    */
    private BigDecimal settFinalMoney;

    /**
    * 结算时间
    */
    private Date createTime;

    /**
    * 打款时间
    */
    private Date okTime;

    /**
    * 状态:1.等待打款,2.已打款,3,打款失败,4.取消打款
    */
    private Integer status;

    /**
    * 操作用户
    */
    private Long optUser;

    /**
    * 打款方式:1.微信 2.支付宝 3.QQ
    */
    private Integer preType;

    /**
    * 打款路径:1.手动,2系统自动
    */
    private Integer ctype;

    /**
    * 打款流水号
    */
    private String tranNo;

    /**
    * 打款失败原因
    */
    private String settError;

    /**
    * 是否结算利润:1.未结算,2.已结算
    */
    private Integer isSett;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getSid() {
        return sid;
    }

    public void setSid(String sid) {
        this.sid = sid;
    }

    public Long getUid() {
        return uid;
    }

    public void setUid(Long uid) {
        this.uid = uid;
    }

    public BigDecimal getSettPreMoney() {
        return settPreMoney;
    }

    public void setSettPreMoney(BigDecimal settPreMoney) {
        this.settPreMoney = settPreMoney;
    }

    public BigDecimal getSettSubMoney() {
        return settSubMoney;
    }

    public void setSettSubMoney(BigDecimal settSubMoney) {
        this.settSubMoney = settSubMoney;
    }

    public BigDecimal getSettFinalMoney() {
        return settFinalMoney;
    }

    public void setSettFinalMoney(BigDecimal settFinalMoney) {
        this.settFinalMoney = settFinalMoney;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getOkTime() {
        return okTime;
    }

    public void setOkTime(Date okTime) {
        this.okTime = okTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Long getOptUser() {
        return optUser;
    }

    public void setOptUser(Long optUser) {
        this.optUser = optUser;
    }

    public Integer getPreType() {
        return preType;
    }

    public void setPreType(Integer preType) {
        this.preType = preType;
    }

    public Integer getCtype() {
        return ctype;
    }

    public void setCtype(Integer ctype) {
        this.ctype = ctype;
    }

    public String getTranNo() {
        return tranNo;
    }

    public void setTranNo(String tranNo) {
        this.tranNo = tranNo;
    }

    public String getSettError() {
        return settError;
    }

    public void setSettError(String settError) {
        this.settError = settError;
    }

    public Integer getIsSett() {
        return isSett;
    }

    public void setIsSett(Integer isSett) {
        this.isSett = isSett;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", sid=").append(sid);
        sb.append(", uid=").append(uid);
        sb.append(", settPreMoney=").append(settPreMoney);
        sb.append(", settSubMoney=").append(settSubMoney);
        sb.append(", settFinalMoney=").append(settFinalMoney);
        sb.append(", createTime=").append(createTime);
        sb.append(", okTime=").append(okTime);
        sb.append(", status=").append(status);
        sb.append(", optUser=").append(optUser);
        sb.append(", preType=").append(preType);
        sb.append(", ctype=").append(ctype);
        sb.append(", tranNo=").append(tranNo);
        sb.append(", settError=").append(settError);
        sb.append(", isSett=").append(isSett);
        sb.append("]");
        return sb.toString();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        SystemSett other = (SystemSett) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getSid() == null ? other.getSid() == null : this.getSid().equals(other.getSid()))
            && (this.getUid() == null ? other.getUid() == null : this.getUid().equals(other.getUid()))
            && (this.getSettPreMoney() == null ? other.getSettPreMoney() == null : this.getSettPreMoney().equals(other.getSettPreMoney()))
            && (this.getSettSubMoney() == null ? other.getSettSubMoney() == null : this.getSettSubMoney().equals(other.getSettSubMoney()))
            && (this.getSettFinalMoney() == null ? other.getSettFinalMoney() == null : this.getSettFinalMoney().equals(other.getSettFinalMoney()))
            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
            && (this.getOkTime() == null ? other.getOkTime() == null : this.getOkTime().equals(other.getOkTime()))
            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
            && (this.getOptUser() == null ? other.getOptUser() == null : this.getOptUser().equals(other.getOptUser()))
            && (this.getPreType() == null ? other.getPreType() == null : this.getPreType().equals(other.getPreType()))
            && (this.getCtype() == null ? other.getCtype() == null : this.getCtype().equals(other.getCtype()))
            && (this.getTranNo() == null ? other.getTranNo() == null : this.getTranNo().equals(other.getTranNo()))
            && (this.getSettError() == null ? other.getSettError() == null : this.getSettError().equals(other.getSettError()))
            && (this.getIsSett() == null ? other.getIsSett() == null : this.getIsSett().equals(other.getIsSett()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getSid() == null) ? 0 : getSid().hashCode());
        result = prime * result + ((getUid() == null) ? 0 : getUid().hashCode());
        result = prime * result + ((getSettPreMoney() == null) ? 0 : getSettPreMoney().hashCode());
        result = prime * result + ((getSettSubMoney() == null) ? 0 : getSettSubMoney().hashCode());
        result = prime * result + ((getSettFinalMoney() == null) ? 0 : getSettFinalMoney().hashCode());
        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
        result = prime * result + ((getOkTime() == null) ? 0 : getOkTime().hashCode());
        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
        result = prime * result + ((getOptUser() == null) ? 0 : getOptUser().hashCode());
        result = prime * result + ((getPreType() == null) ? 0 : getPreType().hashCode());
        result = prime * result + ((getCtype() == null) ? 0 : getCtype().hashCode());
        result = prime * result + ((getTranNo() == null) ? 0 : getTranNo().hashCode());
        result = prime * result + ((getSettError() == null) ? 0 : getSettError().hashCode());
        result = prime * result + ((getIsSett() == null) ? 0 : getIsSett().hashCode());
        return result;
    }
}